
package ru.creator.logical.links.сore.util;

/**
 *
 * @author ~jo-MA-jo~
 */
public class Log {
    public boolean logErr;//отключает/включает логирование ошибок
    public boolean logOut;//отключает/включает логирование различной информации
    public boolean logTalkOut;//отключает/включает логирование исходящих сообщений
    public boolean logTalkIn;//отключает/включает логирование входящих сообщений
    public boolean logDB;//отключает/включает логирование работы с базой
    public boolean logDebug;//отключает/включает логирование отладочной информации
    
    
    public Log(){
        logErr = true;
        logOut = true;
        logTalkOut = true;
        logTalkIn = true;
        logDB = true;
        logDebug = false;
    }

    /**
     * 
     * @param _logErr логирование ошибок
     * @param _logOut логирование различной информации
     * @param _logTalkOut логирование исходящих сообщений
     * @param _logTalkIn логирование входящих сообщений
     * @param _logDB логирование работы с базой
     * @param _logDebug логирование отладочной информации
     */
    public Log(boolean _logErr, boolean _logOut, boolean _logTalkOut, boolean _logTalkIn, boolean _logDB, boolean _logDebug){
        logErr = _logErr;
        logOut = _logOut;
        logTalkOut = _logTalkOut;
        logTalkIn = _logTalkIn;
        logDB = _logDB;
        logDebug = _logDebug;
    }

    /**
     * лог ошибок
     * @param message
     */
    public void err(String message){
       if (logErr) System.out.println("[jCoLL] Err! - "+message);
    }
    
    /**
     * лог различной информации
     * @param message
     */
    public void out(String message){
       if (logOut) System.out.println("[jCoLL] Info - "+message);       
    }

    /**
     * лог исходящих сообщений
     * @param message
     */
    public void talkOut(String message){
       if (logTalkOut) System.out.println("[jCoLL] TalkOut> "+message);       
    }  

    /**
     * лог входящих сообщений
     * @param message
     */
    public void talkIn(String message){
       if (logTalkIn) System.out.println("[jCoLL] TalkIn< "+message);       
    }      
    
    /**
     * лог работы с базой
     * @param message
     */
    public void db(String message){
       if (logDB) System.out.println("[jCoLL] DB - "+message);
    }

    /**
     * лог отладочной информации
     * @param message
     */
    public void debug(String message){
       if (logDebug) System.out.println("[jCoLL] Debug - "+message);
    }
    
}
